<?php
include 'util/bloqueDeSeguridad.php';
include_once('datos/ReporteExportDAL.php');
include_once('entities/Solicitud.php');

$varAdmin = $_SESSION["isAdmin"];
$varUsuario = $_SESSION["IdUsuario"];
$varEmpresa = $_SESSION["IdEmpresa"];

$sql = "where ";
if($varAdmin == 1){
    $sql .= "0 = 0";
} else {
    $sql .= " s.idEmpresa = " .$varEmpresa ." and s.idUsuario = " .$varUsuario;
}

if (isset($_GET['fechadesde'])) {
    $fecdesde = $_GET["fechadesde"];
    if($fecdesde != null && $fecdesde != ""){
    $date = str_replace('/', '-', $fecdesde);
    $fecdesde = date("Y-m-d", strtotime($date));  
    $sql .= " and s.FechaSolicitud > '" . $fecdesde ."'";
    }
}

if (isset($_GET['fechahasta'])) {
    $fechahasta = $_GET["fechahasta"];
    if($fechahasta != null && $fechahasta != ""){
    $date = str_replace('/', '-', $fechahasta);
    $fechahasta = date("Y-m-d", strtotime($date));      
    $sql .= " and s.FechaSolicitud <= '".$fechahasta ."'";
    }
}

if(isset($_GET['idUsuario'])){
    $idUsuarioCombo = $_GET['idUsuario'];
    if($idUsuarioCombo != 0){
    $sql .= " and s.idUsuario = " .$idUsuarioCombo;
    }
}

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

define('EOL', (PHP_SAPI == 'cli') ? PHP_EOL : '<br />');

/** Include PHPExcel */
require_once dirname(__FILE__) . '/Classes/PHPExcel.php';

$objPHPExcel = new PHPExcel();

$objPHPExcel->getProperties()->setCreator('Reporte')
        ->setLastModifiedBy('Reporte')
        ->setTitle('Reporte')
        ->setSubject('Reporte')
        ->setDescription('Reporte')
        ->setKeywords('Reporte')
        ->setCategory('Reporte');

$objPHPExcel->setActiveSheetIndex(0);

$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Empresa')
        ->setCellValue('B1', 'Numero Solicitud')
        ->setCellValue('C1', 'Fecha Solicitud')
        ->setCellValue('D1', 'Apellido')
        ->setCellValue('E1', 'Nombre')
        ->setCellValue('F1', 'Telefono')
        ->setCellValue('G1', 'Cuota')
        ->setCellValue('H1', 'Numero Tarjeta')
;

$repo = new ReporteExportDAL();
$dataArray = $repo->obtenerSolicitudFullQuery($sql);

$cantidadFilas = count($dataArray);

if ($cantidadFilas <= 1) {
    $dataArray = array();
}

/*
$objPHPExcel->getActiveSheet()->getStyle('C2:C999')
    ->getAlignment()->setWrapText(true); 
*/
$objPHPExcel->getActiveSheet()->fromArray($dataArray, NULL, 'A2');

/*
foreach (range('A', 'Z') as $columnID) {
    $objPHPExcel->getActiveSheet()->getColumnDimension($columnID)
            ->setAutoSize(true);
}*/

$fileName = "Reporte.xlsx";

$fileRealPath = constant('CONST_directorioDocs') . $fileName;
$fileWebPath = constant('CONST_dirOnlineDocs') . $fileName;

if (file_exists($fileRealPath)) {
    unlink($fileRealPath);
}

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="'.$fileName.'"');
header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');

$objWriter->save($fileRealPath);

header("Location: " . $fileWebPath);
?>
